#ifndef FAVORITEMANAGERWINDOW_H
#define FAVORITEMANAGERWINDOW_H

#include <QWidget>
#include <QListWidget>
#include <algorithm>
#include "global.h"
#include "urlinfoitemwidget.h"
#include <QModelIndex>
#include "notifymanager.h"

namespace Ui {
class FavoriteManagerWindow;
}

class FavoriteManagerWindow : public QWidget
{
    Q_OBJECT


public:
    explicit FavoriteManagerWindow(QWidget *parent = nullptr);
    ~FavoriteManagerWindow();

    void paintEvent(QPaintEvent *event) override;

    // 添加收藏链接
    void addFavoriteUrlLink(UrlInfo info);

    // 删除收藏链接
    void deleteFavoriteUrlLink(QString link);

    // 加载数据
    void loadData();

    // 刷新界面
    void updateWindow();

    void closeEvent(QCloseEvent *event) override;

    // 更新界面保存的数据
    void updateData();

private slots:
    void on_pushButton_4_clicked();

    void on_pushButton_5_clicked();

private:
    Ui::FavoriteManagerWindow *ui;

    // 运行时缓存
    std::vector<UrlInfo> urlInfos;
};

#endif // FAVORITEMANAGERWINDOW_H
